m_Orchestrate learning system---网站的语言选择功能(中文英文)
一、总结
一句话总结:有两种方法,一是session+js端代码,而是session+php端代码。
推荐使用session+php端代码
用函数最方便,最简便,就是不要忘记引入函数
二、网站的语言选择功能
功能描述截图如下:
方法一:session+js端代码实现
1、选择语言,设置session
//选择语言总界面public function index(){ $fry_language_type=input('fry_language_type'); if($fry_language_type){ session('fry_language_type',$fry_language_type); $this->success('Success(成功)!!','index/index'); } return view();}
2、js端利用session选择语言
3、具体页面位置的语言设置
個人中心Personal
比如导航部分
1 2 3 17 18
4、这种方法优缺点
优点:
a、简便,要设置语言的时候直接在写语言的位置直接复制下面这段代码设置即可
個人中心Personal
缺点:
a、因为是在js端进行的语言选择,所以如果网页加载特别慢没执行到选择语言的js的话,那么显示的时候设置的不同语言是共存的
b、一些特殊的情况无效,比如title,比如下面这段代码(无效原因,span标签被用了):
123 1718
方法二:session+php端代码实现
第一步和上面是一样的,只是语言选择从js操作变成了php操作
1、选择语言,设置session
//选择语言总界面public function index(){ $fry_language_type=input('fry_language_type'); if($fry_language_type){ session('fry_language_type',$fry_language_type); $this->success('Success(成功)!!','index/index'); } return view(); }
2、php(thinkphp5)利用session选择语言
switch语句实现
if语句实现
{if condition="session('fry_language_type')=='fry_language_hk'"}圖片類(畫畫){elseif condition="session('fry_language_type')=='fry_language_en'"/}Image{/if}
函数实现
这长段php代码完全可以写个函数代替:
对应函数:
//語言選擇函數function chooseLanguage($fry_language_hk,$fry_language_en){ $fry_language_type=session('fry_language_type'); if($fry_language_type=="fry_language_hk") echo $fry_language_hk; if($fry_language_type=="fry_language_en") echo $fry_language_en;}
3、优缺点
因为是在php端操作,所以上述js方法出现的问题这里都不会出现,但是感觉修改一处代码太长不简洁,可能用if标签会好点
其实也差不多,if标签和switch标签的长度
用函数最方便,最简便,就是不要忘记引入函数